package com.gxa.mapper;

import com.gxa.common.JsonResult;
import com.gxa.pojo.*;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface EmployeeMapper {
//       页面查询返回实体对象
        List<Employee> queryEmployeeListPage(Integer parma1,Integer parma2);
        Integer findCount();
//       模糊查询，根据员工员工账号、电话、id、姓名查询
        List<Employee> queryEmployeeList(@Param("page") Integer page , @Param("pageSize") Integer pageSize , @Param("search") String search);
//        通过角色名称查询角色权限
       List<Anthority> queryAnthority(Role role);
//        传递员工实体，添加员工
        Integer addEmployee(Employee employee);
//       传递参数，添加部门
        Integer addDept(Dept dept);
//        修改部门
        Integer updateDept(Dept dept);
//        修改权限(先查询出中间表id,再删除id)
        void delRoleAnthority(Integer role_id);
        Integer addRoleAnthority(Integer role_id,Integer anthority_id);
//        数据统计
        List<Employee> dataStatistics();
//        查询权限
        List<Role> queryRole(Integer page,Integer pageSize);
//         查询部门
        List<Dept> queryDept(Integer param1, Integer param2);
//        添加角色，再添加权限
        Integer addRole(@Param("role_name") String role_name);
//      Integer addRoleAnthority(Integer role_id,Integer anthority_id);
//        查询部门条数
        Integer deptCount();
//        修改员工信息
        Integer updateEmployee(Employee employee);
//        高级搜索
        List<Employee>  advancedSearch(Integer page, Integer pageSize, AdvancedSearch advancedSearch);
//      删除部门
        Integer delDept(Dept dept);
//      删除员工
        Integer delEmployee(Employee employee);
//      删除角色
        Integer delRole(Role role);
//      角色数量统计
        Integer roleCount();
//      查询员工
        List<Employee> queryEmpList();
//      查询部门不分页
        List<Dept> queryDept1();
//      查询角色不分页
        List<Role> queryRole1();
//      通过角色名查询角色id
        Integer queryRoleId(String role_name);
//      通过角色名称查询权限id
        Integer queryAnthorityId(String role_name);
}
